Panasonic Switch-M24eG PN28240K
#L2スイッチ
https://panasonic.co.jp/ew/pewnw/product/lan/m24eg_new.html
24ポート
SFPが2つついている
16ポートはこっち→ Panasonic Switch-M16eG PN28160K
ブートコードのアップデート
OpenWrtをインストールする前に念の為ブートコードを最新にしておく
作業用マシン側の準備
https://panasonic.co.jp/ew/pewnw/product/lan/m24eg_new.html から最新のブートコードをダウンロードする
pn28240k_b10022.romと同じディレクトリでtftpサーバを起動する
code:sh
docker run --rm -p 69:69/udp -v "$(pwd)"/pn28240k_b10022.rom:/tftpboot/pn28240k_b10022.rom:ro jumanjiman/tftp-hpa
作業用マシンのIPアドレスを192.168.1.111に設定して、LANケーブルで本機と1:1で接続しておく
シリアルコンソールに接続する
初期ユーザ名: manager
初期パスワード: manager
Cを押してCLIを開く
enableコマンドで特権モードに移行する
code:txt
M16eG> enable
M16eG#
IPアドレスを設定する
code:txt
configure
ip address 192.168.1.1 255.255.255.0
exit
ブートコードのアップデート
code:txt
update boot 192.168.1.16 pn28240k_b10022.rom
OpenWrtのインストール
こちらの手順をもとにやっていく
https://github.com/openwrt/openwrt/commit/fa52e5e2542883382e5bb7233ddfb8b025f932ab
OpenWrt 23.05 のダウンロード
https://firmware-selector.openwrt.org/?version=23.05.5&target=realtek%2Frtl838x&id=panasonic_m24eg-pn28240k
tftpサーバの用意
code:sh
#!/bin/sh
docker run --rm -p 69:69/udp \
-v "$(pwd)"/pn28240k_b10022.rom:/tftpboot/pn28240k_b10022.rom:ro \
-v "$(pwd)"/pn28240k_v30006.rom:/tftpboot/pn28240k_v30006.rom:ro \
-v "$(pwd)"/openwrt-23.05.5-realtek-rtl838x-panasonic_m24eg-pn28240k-initramfs-kernel.bin:/tftpboot/init.img:ro \
jumanjiman/tftp-hpa
PN28240Kの電源をいれたら Ctrl C を連打して u-boot のコンソールにはいる
ネットワークの設定
code:u-boot
setenv ipaddr 192.168.1.1
code:u-boot
setenv serverip 192.168.1.16
code:u-boot
setenv netmask 255.255.255.0
ネットワークの設定は再度使うので、設定を保存しておく
code:u-boot
saveenv
ネットワークを起動する
code:u-boot
rtk network on
ネットワークの疎通確認
code:u-boot
ping 192.168.1.16
initramfsをロードして実行
code:u-boot
tftpboot 0x81000000 init.img
code:u-boot
bootm
code:backup_mtd.sh
#!/bin/sh
set -e
ssh openwrt 'dd if=/dev/mtd0' | dd of=./mtd/mtd0
ssh openwrt 'dd if=/dev/mtd1' | dd of=./mtd/mtd1
ssh openwrt 'dd if=/dev/mtd2' | dd of=./mtd/mtd2
ssh openwrt 'dd if=/dev/mtd3' | dd of=./mtd/mtd3
ssh openwrt 'dd if=/dev/mtd4' | dd of=./mtd/mtd4
ssh openwrt 'dd if=/dev/mtd5' | dd of=./mtd/mtd5
ssh openwrt 'dd if=/dev/mtd6' | dd of=./mtd/mtd6
ssh openwrt 'dd if=/dev/mtd7' | dd of=./mtd/mtd7
バックアップが完了したら、reboot
Ctrl-C を連打して再度u-bootのコンソールにはいる
code:u-boot
ffsmount c:/
code:u-boot
ffsfmt c:/
code:u-boot
rtk network on
code:u-boot
updatert pn28240k_v30006.rom
code:u-boot
setenv loadaddr 0xb4e00000
code:u-boot
setenv bootcmd bootm
code:u-boot
saveenv
initramfsをロードして実行
code:u-boot
tftpboot 0x81000000 init.img
code:u-boot
bootm
作業用マシンからPN28240Kにsysupgradeイメージをsshで転送
code:sh
ssh openwrt 'cat > /tmp/sysupgrade.img' < openwrt-23.05.5-realtek-rtl838x-panasonic_m24eg-pn28240k-squashfs-sysupgrade.bin
sysupgradeを実行
code:sh
sysupgrade -v /tmp/sysupgrade.img
起動完了
https://scrapbox.io/files/670b5b23dd1e04001da4404e.png